Clojure Script এর জন্য nREPL ব্যবহার

Computer Programming - ক্লোজার (Clojure) Clojure Development Environment সেটআপ (Setting Up the Clojure Development Environment) |
219
219

ClojureScript এর জন্য nREPL ব্যবহার

ClojureScript একটি ক্লোজার-ভিত্তিক প্রোগ্রামিং ভাষা, যা জাভাস্ক্রিপ্টে কম্পাইল হয় এবং সাধারণত ব্রাউজার বা Node.js এ চলে। ClojureScript ডেভেলপমেন্টের সময়, nREPL (Networked Read-Eval-Print Loop) একটি গুরুত্বপূর্ণ টুল, যা কোডকে ইন্টারেক্টিভ এবং রিয়েল-টাইমে মূল্যায়ন করতে সহায়ক। nREPL সাধারণত Clojure এবং ClojureScript উভয় পরিবেশে ব্যবহৃত হয়, এবং এটি ClojureScript ডেভেলপমেন্টকে আরও ইন্টারেক্টিভ এবং দ্রুতগামী করে তোলে।


nREPL কী?

nREPL একটি টুল যা নেটওয়ার্কের মাধ্যমে ক্লোজার এবং ক্লোজার-স্ক্রিপ্ট কোডকে ইন্টারঅ্যাকটিভভাবে মূল্যায়ন, ডিবাগিং এবং টেস্টিং করার জন্য ব্যবহার করা হয়। এটি কোড লেখার, পরীক্ষা করার এবং প্রয়োগ করার সময় তাৎক্ষণিক ফলাফল দেখতে সাহায্য করে। nREPL এর মাধ্যমে আপনি একটি REPL পরিবেশে ClojureScript কোড লিখতে পারেন এবং রিয়েল-টাইমে এর আউটপুট পেতে পারেন।


ClojureScript এর জন্য nREPL সেটআপ করা

ClojureScript এর জন্য nREPL সেটআপ করা সাধারণত Leiningen বা shadow-cljs ব্যবহার করে করা হয়। নিচে আমরা shadow-cljs ব্যবহার করে একটি সাধারণ nREPL সেটআপ দেখবো, যা Node.js বা ব্রাউজার উভয়েই কাজ করে।

প্রয়োজনীয়তা:

  1. Java Development Kit (JDK): ClojureScript এবং nREPL চালানোর জন্য JDK ইন্সটল থাকা আবশ্যক।
  2. Node.js: ClojureScript কে Node.js এ রান করার জন্য Node.js ইনস্টল থাকা আবশ্যক।
  3. Leiningen বা shadow-cljs: Leiningen এবং shadow-cljs উভয়ই ClojureScript প্রজেক্ট ম্যানেজমেন্টের জন্য জনপ্রিয় টুল। আমরা shadow-cljs ব্যবহার করবো।

shadow-cljs এবং nREPL সেটআপের ধাপসমূহ

১. প্রজেক্ট তৈরি করা

প্রথমে, একটি নতুন ClojureScript প্রজেক্ট তৈরি করুন এবং shadow-cljs কনফিগার করুন।

npx create-cljs-project my-cljs-project
cd my-cljs-project

২. shadow-cljs.edn ফাইলে nREPL কনফিগার করা

প্রজেক্টের রুট ডিরেক্টরিতে থাকা shadow-cljs.edn ফাইলে nREPL কনফিগারেশন যুক্ত করুন।

{:source-paths
 ["src"]

 :dependencies
 [[cider/cider-nrepl "0.27.4"]]

 :nrepl {:port 7002} ; nREPL সার্ভারের জন্য পোর্ট নির্ধারণ

 :builds
 {:app
  {:target :browser
   :output-dir "public/js"
   :asset-path "/js"
   :modules {:main {:init-fn my-cljs-project.core/init}}}}}

এখানে, :nrepl কনফিগারেশন অংশে আমরা পোর্ট ৭০০২ সেট করেছি যেখানে nREPL সার্ভার চলবে। :dependencies অংশে cider/cider-nrepl ডিপেন্ডেন্সি যোগ করেছি, যা Emacs, CIDER বা VSCode এর Calva এর মতো টুলের মাধ্যমে nREPL সেশন চালাতে সাহায্য করবে।

৩. shadow-cljs REPL চালু করা

এখন nREPL চালু করার জন্য shadow-cljs REPL কমান্ড রান করুন:

npx shadow-cljs watch app

এটি আপনার ClojureScript প্রজেক্টে nREPL চালু করবে এবং এটি পোর্ট ৭০০২-এ কানেক্ট হবে।

৪. nREPL এর সাথে কানেক্ট করা

nREPL চালু হলে, আপনি Emacs, VSCode (Calva), IntelliJ IDEA বা অন্য কোনো IDE এর মাধ্যমে nREPL সেশনে কানেক্ট করতে পারেন।


nREPL ব্যবহার করে ClojureScript এর ইন্টারেক্টিভ ডেভেলপমেন্ট

nREPL ব্যবহার করে আপনি ব্রাউজারে চলা ClojureScript কোডকে সরাসরি REPL থেকে ইন্টারঅ্যাকটিভভাবে পরিবর্তন, পরীক্ষা এবং ডিবাগ করতে পারবেন। উদাহরণস্বরূপ, আপনি my-cljs-project.core নেমস্পেসে একটি ফাংশন পরিবর্তন করে তাৎক্ষণিকভাবে সেই ফাংশনের নতুন আউটপুট দেখতে পারেন।


উদাহরণ: nREPL সেশনে কোড মূল্যায়ন

nREPL সেশনে কানেক্ট হয়ে (+ 1 2 3) কোড রান করতে পারেন, যা তাৎক্ষণিকভাবে আউটপুট প্রদান করবে:

(+ 1 2 3) ; আউটপুট: 6

এটি ক্লোজারস্ক্রিপ্টে আরও জটিল ফাংশন এবং কোড মডিউলকে পরীক্ষণ এবং ডিবাগ করার জন্য একটি উপযোগী টুল।


উপসংহার

ClojureScript এর জন্য nREPL ডেভেলপমেন্টকে দ্রুতগামী, ইন্টারেক্টিভ এবং কার্যকর করে তোলে। এটি ClojureScript কোডকে দ্রুত লিখতে, পরীক্ষা করতে এবং রিয়েল-টাইমে ফলাফল পেতে সহায়ক। Emacs এবং VSCode এর মতো IDE গুলোতে nREPL সাপোর্ট থাকায় ডেভেলপাররা দ্রুত কোড পরিবর্তন এবং উন্নয়নের সুবিধা পান, যা ClojureScript ডেভেলপমেন্টে nREPL এর গুরুত্বকে আরও বাড়িয়ে তোলে।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion